// 7zRegister.cpp

#include "StdAfx.h"

#include "../../Common/RegisterArc.h"

#include "7zHandler.h"
static IInArchive *CreateArc() { return new NArchive::N7z::CHandler;  }
static IInArchive *CreateArc8z() 
{ 
  NArchive::N7z::CHandler *res = new NArchive::N7z::CHandler;
  if(res)
    res->is8z = true;
  return res;
}
#ifndef EXTRACT_ONLY
static IOutArchive *CreateArcOut() { return new NArchive::N7z::CHandler;  }
static IOutArchive *CreateArcOut8z()
{ 
  NArchive::N7z::CHandler *res = new NArchive::N7z::CHandler;
  if(res)
    res->is8z = true;
  return res;
}
#else
#define CreateArcOut 0
#define CreateArcOut8z 0
#endif

static CArcInfo g_ArcInfo =
  { L"7z", L"7z", 0, 7, {'7' + 1 , 'z', 0xBC, 0xAF, 0x27, 0x1C}, 6, false, CreateArc, CreateArcOut };

REGISTER_ARC_DEC_SIG(7z)

// register 8zip
static CArcInfo g_ArcInfo1 =
  { _8ZIP_NAME, _8ZIP_NAME, 0, 0x78, {'k' + 1 , 'z', 0xBC, 0xAF, 0x27, 0x1C}, 6, false, CreateArc8z, CreateArcOut8z };

REGISTER_ARC_DEC_SIG1(8z)
